package com.text.day1_4.arr;

import java.util.Arrays;
import java.util.Scanner;

public class CopyArr {
    /**
     * 拷贝数组
     * @param arr1      原数组
     * @param oldstart  原数组的起始位置
     * @param arr2      新数组
     * @param newstart  新数组的起始位置
     * @param length    拷贝的长度
     */
    public static void copyArr(int[] arr1,int oldstart,int[] arr2,int newstart,int length){
        int i = oldstart;
        while (oldstart - i != length){
            arr2[newstart] = arr1[oldstart];
            newstart++;
            oldstart++;
        }
    }


    /**
     *  拷贝数组的方法，把原数组中的内容拷贝到新数组中
     * @param arr1
     * @param arr2
     */
    public static void copyArr(int[] arr1,int[] arr2){
        for (int i = 0; i < arr1.length; i++) {
            arr2[i] = arr1[i];
        }
    }

    public static void priArr(int[] arr){
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
        System.out.println();       //  "\n"   换行
    }
    public static void main(String[] args) {
        int[] a = new int[]{1,6,45,461,45,215,112,61};
        int len = 3;
        int[] ints = new int[a.length];
        copyArr(a,3,ints,3,len);
        priArr(a);
        priArr(ints);


//        System.arraycopy();      和上面方法效果一样 。自带的      拷贝数组
//        Arrays.copyOf()            给一个数组和长度   ，返回一个复制的新数组

//        int[] a = new int[]{1,6,45,461,45,215};
//        int[] ints = new int[6];             //   写活
//        System.out.println("几个数？");
//        Scanner scanner = new Scanner(System.in);
//        int len = scanner.nextInt();
//        int[] a = new int[len];
//        int[] ints = new int[len];
//        for (int i = 0; i < a.length; i++) {
//            System.out.print("加入数组的数");
//            a[i] = scanner.nextInt();
//        }
//
//        copyArr(a,ints);
//        priArr(a);
//        priArr(ints);

//        System.out.println(a);
    }
}
